//
//  MainTabBar.swift
//  Weibo
//
//  Created by 张小东 on 16/1/11.
//  Copyright © 2016年 Mr.Zhang. All rights reserved.
//

import UIKit

class MainTabBar: UITabBar {
    
    // 手动写代码  会调用这份构造函数 自定义的入口
    override init(frame: CGRect) {
        super.init(frame :frame)
        // 添加加号按钮
        addSubview(plusBtn)
    }
    // 重写init(frame) 系统会默认 当前类对象 只能通过手写代码的方式创建
    // 如果程序员通过xib 创建对象 程序就会崩溃
    //
    required init?(coder aDecoder: NSCoder) {
        //默认实现了一个报错
        fatalError("init(coder:) has not been implemented")
    }
    // 修改tabBar 子视图的位置 大小 并且将中间的位置空出来
    override func layoutSubviews() {
        // 一定要调用父类的方法
        super.layoutSubviews()
        //定义 item的宽度
        let w = self.bounds.size.width / 5
        let h = self.bounds.height
        let rect = CGRect(x : 0, y: 0, width: w, height: h)
        //定义索引
        var index : CGFloat = 0
        // 遍历子视图
        for subview in subviews {
            // 获取所有的UITabBarButton类型的对象
            if subview.isKindOfClass(NSClassFromString("UITabBarButton")!) {
                subview.frame = CGRectOffset(rect, index * w, 0)
                index += (index == 1 ? 2 : 1)
            }
        }
        
        //修改加号的位置
        plusBtn.frame = CGRectOffset(rect, 2 * w, 0)
        //        bringSubviewToFront(plusBtn)
    }
    // 懒加载获取 加号 按钮
    lazy var plusBtn : UIButton = UIButton(imageName: "tabbar_compose_button", backImageName: "tabbar_compose_icon_add")
    
    
    
//        let btn = UIButton()
//        //  设置btn的背景图片
//        btn.setBackgroundImage(UIImage(named: "tabbar_compose_button"), forState: .Normal)
//        btn.setBackgroundImage(UIImage(named: "tabbar_compose_button_highlighted"), forState: .Highlighted)
//        //设置按钮的图片
//        btn.setImage(UIImage(named: "tabbar_compose_icon_add"), forState: .Normal)
//        btn.setImage(UIImage(named: "tabbar_compose_icon_add_highlighted"), forState: .Highlighted)
//        // 设置自适应大小
//        btn.sizeToFit()
//        return btn
//    }()
//    
    
}
